package com.ruoyi.domain;

import java.io.Serializable;

/**
 * 收货地址#customer_address
 * @TableName customer_address
 */
public class CustomerAddress implements Serializable {
    /**
     * 收货地址主键#primary
     */
    private Integer addressId;

    /**
     * 详细地址
     */
    private String addressDetails;

    /**
     * 收货人
     */
    private String addressConsignee;

    /**
     * 联系电话
     */
    private String addressPhone;

    /**
     * 所属省(area_level=2)#foreign#base_area=area_id,area_name
     */
    private Integer areaProvinceId;

    private String areaProvinceName;

    /**
     * 所属市(area_level=3)#foreign#base_area=area_id,area_name
     */
    private Integer areaCityId;

    private String areaCityName;

    /**
     * 所属区(area_level=4)#foreign#base_area=area_id,area_name
     */
    private Integer areaDistrictId;

    private String areaDistrictName;

    /**
     * 客户#foreign#customer_info=customer_id,customer_nikename
     */
    private Integer customerId;

    private String customerNikename;

    /**
     * 收货地址状态#state#0=非默认,  1=默认 , 3=已删除
     */
    private Integer addressState;

    /**
     * 邮编
     */
    private String addressSn;

    private static final long serialVersionUID = 1L;

    @Override
    public String toString() {
        return "CustomerAddress{" +
                "addressId=" + addressId +
                ", addressDetails='" + addressDetails + '\'' +
                ", addressConsignee='" + addressConsignee + '\'' +
                ", customerNikename='" + customerNikename + '\'' +
                ", areaProvinceName='" + areaProvinceName + '\'' +
                ", areaCityName='" + areaCityName + '\'' +
                ", areaDistrictName='" + areaDistrictName + '\'' +
                ", addressPhone='" + addressPhone + '\'' +
                ", areaProvinceId=" + areaProvinceId +
                ", areaCityId=" + areaCityId +
                ", areaDistrictId=" + areaDistrictId +
                ", customerId=" + customerId +
                ", addressState=" + addressState +
                ", addressSn='" + addressSn + '\'' +
                '}';
    }

    public String getCustomerNikename() {
        return customerNikename;
    }

    public void setCustomerNikename(String customerNikename) {
        this.customerNikename = customerNikename;
    }

    public String getAreaProvinceName() {
        return areaProvinceName;
    }

    public void setAreaProvinceName(String areaProvinceName) {
        this.areaProvinceName = areaProvinceName;
    }

    public String getAreaCityName() {
        return areaCityName;
    }

    public void setAreaCityName(String areaCityName) {
        this.areaCityName = areaCityName;
    }

    public String getAreaDistrictName() {
        return areaDistrictName;
    }

    public void setAreaDistrictName(String areaDistrictName) {
        this.areaDistrictName = areaDistrictName;
    }

    /**
     * 收货地址主键#primary
     */
    public Integer getAddressId() {
        return addressId;
    }

    /**
     * 收货地址主键#primary
     */
    public void setAddressId(Integer addressId) {
        this.addressId = addressId;
    }

    /**
     * 详细地址
     */
    public String getAddressDetails() {
        return addressDetails;
    }

    /**
     * 详细地址
     */
    public void setAddressDetails(String addressDetails) {
        this.addressDetails = addressDetails;
    }

    /**
     * 收货人
     */
    public String getAddressConsignee() {
        return addressConsignee;
    }

    /**
     * 收货人
     */
    public void setAddressConsignee(String addressConsignee) {
        this.addressConsignee = addressConsignee;
    }

    /**
     * 联系电话
     */
    public String getAddressPhone() {
        return addressPhone;
    }

    /**
     * 联系电话
     */
    public void setAddressPhone(String addressPhone) {
        this.addressPhone = addressPhone;
    }

    /**
     * 所属省(area_level=2)#foreign#base_area=area_id,area_name
     */
    public Integer getAreaProvinceId() {
        return areaProvinceId;
    }

    /**
     * 所属省(area_level=2)#foreign#base_area=area_id,area_name
     */
    public void setAreaProvinceId(Integer areaProvinceId) {
        this.areaProvinceId = areaProvinceId;
    }

    /**
     * 所属市(area_level=3)#foreign#base_area=area_id,area_name
     */
    public Integer getAreaCityId() {
        return areaCityId;
    }

    /**
     * 所属市(area_level=3)#foreign#base_area=area_id,area_name
     */
    public void setAreaCityId(Integer areaCityId) {
        this.areaCityId = areaCityId;
    }

    /**
     * 所属区(area_level=4)#foreign#base_area=area_id,area_name
     */
    public Integer getAreaDistrictId() {
        return areaDistrictId;
    }

    /**
     * 所属区(area_level=4)#foreign#base_area=area_id,area_name
     */
    public void setAreaDistrictId(Integer areaDistrictId) {
        this.areaDistrictId = areaDistrictId;
    }

    /**
     * 客户#foreign#customer_info=customer_id,customer_nikename
     */
    public Integer getCustomerId() {
        return customerId;
    }

    /**
     * 客户#foreign#customer_info=customer_id,customer_nikename
     */
    public void setCustomerId(Integer customerId) {
        this.customerId = customerId;
    }

    /**
     * 收货地址状态#state#0=非默认,  1=默认 , 3=已删除
     */
    public Integer getAddressState() {
        return addressState;
    }

    /**
     * 收货地址状态#state#0=非默认,  1=默认 , 3=已删除
     */
    public void setAddressState(Integer addressState) {
        this.addressState = addressState;
    }

    /**
     * 邮编
     */
    public String getAddressSn() {
        return addressSn;
    }

    /**
     * 邮编
     */
    public void setAddressSn(String addressSn) {
        this.addressSn = addressSn;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        CustomerAddress other = (CustomerAddress) that;
        return (this.getAddressId() == null ? other.getAddressId() == null : this.getAddressId().equals(other.getAddressId()))
            && (this.getAddressDetails() == null ? other.getAddressDetails() == null : this.getAddressDetails().equals(other.getAddressDetails()))
            && (this.getAddressConsignee() == null ? other.getAddressConsignee() == null : this.getAddressConsignee().equals(other.getAddressConsignee()))
            && (this.getAddressPhone() == null ? other.getAddressPhone() == null : this.getAddressPhone().equals(other.getAddressPhone()))
            && (this.getAreaProvinceId() == null ? other.getAreaProvinceId() == null : this.getAreaProvinceId().equals(other.getAreaProvinceId()))
            && (this.getAreaCityId() == null ? other.getAreaCityId() == null : this.getAreaCityId().equals(other.getAreaCityId()))
            && (this.getAreaDistrictId() == null ? other.getAreaDistrictId() == null : this.getAreaDistrictId().equals(other.getAreaDistrictId()))
            && (this.getCustomerId() == null ? other.getCustomerId() == null : this.getCustomerId().equals(other.getCustomerId()))
            && (this.getAddressState() == null ? other.getAddressState() == null : this.getAddressState().equals(other.getAddressState()))
            && (this.getAddressSn() == null ? other.getAddressSn() == null : this.getAddressSn().equals(other.getAddressSn()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getAddressId() == null) ? 0 : getAddressId().hashCode());
        result = prime * result + ((getAddressDetails() == null) ? 0 : getAddressDetails().hashCode());
        result = prime * result + ((getAddressConsignee() == null) ? 0 : getAddressConsignee().hashCode());
        result = prime * result + ((getAddressPhone() == null) ? 0 : getAddressPhone().hashCode());
        result = prime * result + ((getAreaProvinceId() == null) ? 0 : getAreaProvinceId().hashCode());
        result = prime * result + ((getAreaCityId() == null) ? 0 : getAreaCityId().hashCode());
        result = prime * result + ((getAreaDistrictId() == null) ? 0 : getAreaDistrictId().hashCode());
        result = prime * result + ((getCustomerId() == null) ? 0 : getCustomerId().hashCode());
        result = prime * result + ((getAddressState() == null) ? 0 : getAddressState().hashCode());
        result = prime * result + ((getAddressSn() == null) ? 0 : getAddressSn().hashCode());
        return result;
    }

}